February 11, 2022
Blog series: Building a data import workflow using Cloud datasources and CFML
Comments
(0)
February 11, 2022
Blog series: Building a data import workflow using Cloud datasources and CFML
ColdFusion developer for 20+ years, professional experience in 10 other languages & frameworks. Artist, nerd, Jeep enthusiast.
Newbie 35 posts
Followers: 31 people
(0)

Alrighty! So this is going to be the first post introducing a little project I’m going to be building up and sharing the code to on Github for folks to use if they would like. I’ve actually had this workflow requirement come up several times in my development career, so I’m going to assume it is something the community might find useful.

The App
Essentially, the app will take a non-db datasource (in our case, Google Sheets), import that sheet into our data flow in table rows, allow the user to edit any of the fields inline, then push that new, edited, row into an online database, in this case we will be using AWS DynamoDB. There will also be a capability to push a brand new, ad hoc row. Data from both the non-db source and the target db source will both be displayed and updated in real time as they are edited. At the end, the user will be able to export the contents of the DynamoDB back out to a spreadsheet format, either for re-import or to use in another reporting platform (or, just to turn in as the finished dataset of course).

The Stack
The core of this application will be CFML written and run by Adobe ColdFusion 2021. We will be using BaseQL as the connector to the non-db datasource to generate a GraphQL endpoint which we will query to get our data out. The non-db datasource will be a Google Sheet that I’ll populate with data. To do the inline editing of data & real-time updates/display, we’ll leverage HTMX, a lightweight JavaScript framework that allows for extremely low code, fast development of apps. It works incredibly well alongside ColdFusion. Our destination database will be AWS DynamoDB. I’ve chosen this for a number of reasons. It is hyperfast, with single-digit millisecond performance. More importantly in our case, AWS offers 25GB of storage and 200 million read/write requests per month on their free tier.

What’s Next?
Next week, we will dive right in, starting with the end, and learn how to spin up a DynamoDB instance in AWS, connect it to ColdFusion 2021 and do some initial reads & writes to get comfortable with our eventual application use case. Stay tuned!

0 Comments
Add Comment